package com.bsiprosoft.ejerciciosandoidproject;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

/**
 * Created by pbastidas on 12/16/13.
 * <p/>
 * Activity desarrollado para ilustrar el comportamiento del ciclo de vida de un Activity
 */
public class EjemploCicloDeVida extends Activity {

    // String que contendrá los diferentes eventos que se ejecutan del ciclo de vida del Activity
    private StringBuilder eventos;
    // Widget o elemento del activity que visualizará los eventos
    private TextView textView;

    public EjemploCicloDeVida() {
        eventos = new StringBuilder();
    }

    /**
     * Método dispuesto para la realización del log de los eventos, tanto en la variable eventos como en el log
     * del sistems.
     *
     * @param evento Cadena que indica el nombre del evento.
     */
    private void log(String evento) {
        Log.d(this.getLocalClassName(), evento);

        eventos.append(evento);
        eventos.append("\n");

        textView.setText(eventos.toString());
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        textView = new TextView(this);
        textView.setText(eventos.toString());

        setContentView(textView);

        log("onCreate");
    }

    @Override
    protected void onResume() {
        super.onResume();

        log("onResume");
    }

    @Override
    protected void onPause() {
        super.onPause();

        log("onPause");

        if (isFinishing()) {
            log("isFinishing");
        }
    }
}
